In modern communication networks signaling messages, which are for example used to set up and tear down telephone calls, are often transported in a separate network, e.g. a signaling system No. 7 (SS7) network. For using internet protocol (IP)-based services, such as Voice-over-IP telephony, signaling messages have to be transported in the IP network. In the SS7 network signaling messages are transported using the message transfer part (MTP) 1-3 protocols, a user of which is the signaling connection control part (SCCP) protocol, which are implemented as a protocol stack comprising further protocol layers in SS7 network nodes. For enabling the transport of for example MTP3 or SCCP messages in an IP-based network, the internet engineering taskforce (IETF) has defined SIGTRAN protocols which provide the services of e.g. MTP3 or SCCP in the IP network. A signaling gateway connecting the SS7 network and the IP-based network terminates certain SS7 signaling transport layers, while upper layer protocols are moved from the node hosting the SS7 signaling transport layers, i.e. the signaling gateway, to nodes residing in the IP-based network. FIG. 1 shows a protocol stack model adopted in SIGTRAN architectures for transporting messages between the SS7 network (node I) and the IP-based network (node J). An interworking function (IWF) of the signaling gateway (SG) maps the primitives between layer k and layer k+1 to a user adaptation protocol handled by a dedicated user adaptation layer (xxUA). The xxUA layer resides on top of a stream control transmission protocol (SCTP) layer, which is a transport protocol operating analogously to TCP or UDP.
End nodes in the IP network implement a distributed architecture hosting upper protocol layers and an application layer, which in conventional systems resides on top of legacy or SS7 signaling transport protocols. Coordination between (application) layers of different nodes realizing a distributed Application Server is considered Application Server internal matter, the SIGTRAN working group (WG) does not specify Application Server internal protocols. The SIGTRAN WG defines concepts and procedures that enable distributed architectures from a signaling transport perspective. SIGTRAN signaling transport layers or xxUA layers are capable of identifying nodes serving the same Application Server, their traffic mode types and other characteristics and act accordingly to support nodes serving the same Application Server.
Legacy (or SS7) network layers such as MTP3, have a discriminating function which for each incoming message checks destination address of the message, e.g. a destination point code (DPC), against own addresses, and if the destination address coincides with an own address the message is delivered to a user protocol layer attached to a corresponding Service Access Point (SAP). Otherwise, if destination address does not coincide with an own address, the layer either discards the message or invokes a message routing function, which routes the message to the next hop, if possible. That is, messages destined to an address different from an own address are relayed using the same MTP3 protocol layer to the next hop. Instead of node addresses, message discriminating and routing functions can use other message parameters identifying a node in a network.
SIGTRAN SGs inherit this property, a legacy layer in a SIGTRAN SG has to recognize a destination address as an own address in order to deliver an incoming message to a User layer interworking with a User Adaptation layer. For example in a signaling gateway implementing a SCCP user adaptation (SUA) layer (SUA SG), the MTP3 layer has to recognize a DPC of an incoming message as being an own signaling point code (SPC) in order to deliver the message to the SCCP layer. The SUA SG interworks the SCCP layer further with the SUA layer, which delivers the message to an application server process (ASP) serving the corresponding range of application traffic.
In the MTP3 user adaptation (M3UA) architecture, the M3UA protocol is a transport protocol for MTP3 messages, whereas the original intention was to make it reflecting MTP3 primitives. Accordingly, the MTP3-M3UA complex can re-use the MTP3 routing function, which resides on top of the M3UA layer and enables a multiple signaling gateway scenario. The MTP3 routing function routes an incoming message to the next M3UA node. This approach does not significantly change MTP3 network architectures. However, the SIGNTRAN working group did not map some of the MTP3 messages to corresponding M3UA messages. Accordingly, M3UA networks cannot realize true relay networks as MTP3 does. SIGTRAN architectures and protocols are in detail described in RFC 4666 and RFC 3868.
In order to deliver a message to a legacy or SS7 layer from an underlying legacy layer, for instance from MTP3 to SCCP, the underlying legacy layer (e.g. MTP3) has to recognize a destination address included in a message as an own address. Recognizing an address as an own address in several different signaling gateways is not possible, and accordingly such a message may not be routed via different signaling gateways. This limitation on an interworking of the legacy layers thus prevents a multiple signaling gateway scenario. Multiple nodes may be used to implement one single signaling gateway, which may then look as one node from the perspective of a legacy node communicating via the signaling gateway. Yet such a signaling gateway has all implementation drawbacks characteristic of a distributed layer (e.g. MTP 3).
The use of multiple signaling gateways for routing signaling traffic between an SS7 signaling endpoint (SEP) and an application server process (ASP) of the IP-based network is prevented in the case where a legacy layer, e.g. SCCP, is terminated in the signaling gateway without moving some of its procedures and functions to an IP network node (e.g. the ASP). In order for a message to be delivered to the SCCP layer in the SG, the message needs to directly address the SG, whereby a routing of the message via another SG is prevented. Accordingly, the message can only be transported via the addressed signaling gateway. To ensure reliability of signaling transport, fault resilient architectures have to be implemented for the SGs, and the corresponding layer has to be distributed in a distributed SG architecture. As a result, SG architectures are complicated and development costs for SGs are increased, as well as operational expenditure for operators.
When it is attempted to move functions and procedures from SGs to IP nodes, an additional coordination between IP nodes is required or the moved procedures need to have the property of being independent and capable of a simultaneous and parallel execution from different IP nodes. Such an implementation can often not be realized and is frequently too costly.
Accordingly, it is desirable to route signaling messages via different signaling gateways while executing functions and procedures relating to the routed messages at the signaling gateway. In particular, it would be desirable to route signaling messages via different signaling gateways while still being capable of processing these messages at an upper layer, e.g. SCCP, in the signaling gateway. Accordingly, there is a need to overcome or at least mitigate the above-mentioned drawbacks. In particular, there is a need to provide an improved method of operating a signaling gateway and an improved signaling gateway which do not suffer from these drawbacks.